package com.demodis.action;

import com.demodis.domain.Json;
import com.demodis.domain.TblRole;
import com.demodis.service.RoleServiceI;
import com.demodis.service.impl.RoleServiceImpl;
import com.opensymphony.xwork2.ModelDriven;

public class RoleAction extends BaseAction implements ModelDriven<TblRole> {

	private static final long serialVersionUID = -4798736623353267033L;

	RoleServiceI roleService = new RoleServiceImpl();

	TblRole role = new TblRole();

	public void query() {
		super.writeJson(roleService.getRoles());
	}
	
	public void getRoleComboBoxData() {
		super.writeJson(roleService.getRoleComboBoxData());
	}
	
	public void distribute() {
		Json json = new Json();
		if (roleService.distribute(role)) {
			json.setSuccess(true);
			json.setMsg("角色分配成功!");
		} else {
			json.setSuccess(false);
			json.setMsg("角色分配失败!");
		}

		super.writeJson(json);
	}

	public void add() {
		Json json = new Json();
		if (roleService.save(role)) {
			json.setSuccess(true);
			json.setMsg("添加成功!");
		} else {
			json.setSuccess(false);
			json.setMsg("添加失败!");
		}

		super.writeJson(json);
	}

	public void modify() {
		Json json = new Json();
		if (roleService.modify(role)) {
			json.setSuccess(true);
			json.setMsg("修改成功!");
			json.setObject(role);
		} else {
			json.setSuccess(false);
			json.setMsg("修改失败!");
		}

		super.writeJson(json);
	}

	public void delete() {
		Json json = new Json();
		if (roleService.delete(role)) {
			json.setSuccess(true);
			json.setMsg("删除成功!");
		} else {
			json.setSuccess(false);
			json.setMsg("删除失败!");
		}

		super.writeJson(json);
	}

	@Override
	public TblRole getModel() {
		return role;
	}

}
